Enkapsulacija (objektno-orijentisano programiranje)
Izgled
U programskom jeziku, enkapsulacija se odnosi na jedan od dva povezana ali različita pojma, a ponekad i na njihovu kombinaciju[1][2]:
- Mehanizam jezika za zabranu pristupa nekim od komponenti objekta.[3][4]
- Konstrukt jezika koji olakšava grupisanje podataka i metoda (ili drugih funkcija) koje operišu nad tim podacima.[5][6]
Neki teoretičari programskih jezika koriste prvo značenje samo ili u kombinaciji sa drugim značenjem kao jedno od osnovnih svojstava objektno-orijentisanog programiranja, dok se kod nekih programskih jezika koji omogućavaju leksička zatvorenja enkapsulacija posmatra kao osobina jezika, ortogonalna orijentaciji objekta.
Druga definicija je motivisana činjenicom da u mnogim OOP jezicima sakrivanje komponenti nije automatsko i može biti premošćeno, stoga oni koji preferiraju drugu definiciju sakrivanje informacija definišu kao zaseban pojam.
- ↑ Michael Lee Scott, Programming language pragmatics, Edition 2, Morgan Kaufmann, 2006, ISBN 0-12-633951-1, p. 481: „Mehanizmi enkapsulacije omogućavaju programeru da grupiše podatke i subrutine koje nad njima operišu zajedno na jednom mestu, i da sakrije irelevantne detalje od korisnika apstrakcije.“
- ↑ Nell B. Dale, Chip Weems, Programming and problem solving with Java, Edition 2, Jones & Bartlett Publishers, 2007, ISBN 0-7637-3402-0, p. 396
- ↑ John C. Mitchell, Concepts in programming languages, Cambridge University Press, 2003, ISBN 0-521-78098-5, p.522
- ↑ Pierce, Benjamin (2002). Types and Programming Languages. MIT Press. ISBN 0-262-16209-1. p. 266
- ↑ Wm. Paul Rogers, Encapsulation is not information hiding Arhivirano 2013-10-29 na Wayback Machine-u, JavaWorld.com, 05/18/01
- ↑ Thomas M. Connolly, Carolyn E. Begg, Database systems: a practical approach to design, implementation, and management, Edition 4, Pearson Education, 2005, ISBN 0-321-21025-5, Chapter 25, "Introduction to Object DMBS", section "Object-oriented concepts", p. 814